package com.diudiutechnology.www.yadiudiu.util.utils;

import android.content.Context;
import android.graphics.Bitmap;
import android.widget.ImageView;

import com.bumptech.glide.Glide;
import com.bumptech.glide.load.engine.DiskCacheStrategy;
import com.diudiutechnology.www.yadiudiu.R;
import com.nostra13.universalimageloader.core.DisplayImageOptions;
import com.nostra13.universalimageloader.core.assist.ImageScaleType;
import com.nostra13.universalimageloader.core.display.FadeInBitmapDisplayer;

/**
 * Created by Administrator on 2017/9/5.
 */

public class ImgUtils {
    //头像
    public static DisplayImageOptions mImageOptions() {
        DisplayImageOptions options = new DisplayImageOptions.Builder()
                .showImageOnLoading(R.mipmap.thedefaultavatar) // 设置图片下载期间显示的图片
                .showImageForEmptyUri(R.mipmap.thedefaultavatar) // 设置图片Uri为空或是错误的时候显示的图片
                .showImageOnFail(R.mipmap.thedefaultavatar) // 设置图片加载或解码过程中发生错误显示的图片
                .considerExifParams(true) // 是否考虑JPEG图像EXIF参数（旋转，翻转）
                .imageScaleType(ImageScaleType.EXACTLY_STRETCHED)// 设置图片以如何的编码方式显示（图片会缩放到目标大小完全）
                .bitmapConfig(Bitmap.Config.RGB_565) // 设置图片的解码类型
                .displayer(new FadeInBitmapDisplayer(100)) // 是否图片加载好后渐入的动画时间
                .build(); // 创建配置过得DisplayImageOption对象
        return options;
    }
    //失效图片
    public static DisplayImageOptions imageOptions() {
        DisplayImageOptions options = new DisplayImageOptions.Builder()
                .showImageOnLoading(R.mipmap.loadfailure) // 设置图片下载期间显示的图片
                .showImageForEmptyUri(R.mipmap.loadfailure) // 设置图片Uri为空或是错误的时候显示的图片
                .showImageOnFail(R.mipmap.loadfailure) // 设置图片加载或解码过程中发生错误显示的图片
                .considerExifParams(true) // 是否考虑JPEG图像EXIF参数（旋转，翻转）
                .imageScaleType(ImageScaleType.EXACTLY_STRETCHED)// 设置图片以如何的编码方式显示（图片会缩放到目标大小完全）
                .bitmapConfig(Bitmap.Config.RGB_565) // 设置图片的解码类型
                .displayer(new FadeInBitmapDisplayer(100)) // 是否图片加载好后渐入的动画时间
                .build(); // 创建配置过得DisplayImageOption对象
        return options;
    }
    //失效图片
    public static DisplayImageOptions imageOpti() {
        DisplayImageOptions options = new DisplayImageOptions.Builder()
                .showImageOnLoading(R.mipmap.upload_photos) // 设置图片下载期间显示的图片
                .showImageForEmptyUri(R.mipmap.upload_photos) // 设置图片Uri为空或是错误的时候显示的图片
                .showImageOnFail(R.mipmap.upload_photos) // 设置图片加载或解码过程中发生错误显示的图片
                .considerExifParams(true) // 是否考虑JPEG图像EXIF参数（旋转，翻转）
                .imageScaleType(ImageScaleType.EXACTLY_STRETCHED)// 设置图片以如何的编码方式显示（图片会缩放到目标大小完全）
                .bitmapConfig(Bitmap.Config.RGB_565) // 设置图片的解码类型
                .displayer(new FadeInBitmapDisplayer(100)) // 是否图片加载好后渐入的动画时间
                .build(); // 创建配置过得DisplayImageOption对象
        return options;
    }

    public static void GlideImage(Context context,String url, ImageView imageView){
        Glide.with(context).load(Constant.HTTP + url).asBitmap()
                .error(R.mipmap.loadfailure)//里面放默认图片
                .placeholder(R.mipmap.loadfailure)
                .centerCrop().diskCacheStrategy(DiskCacheStrategy.NONE)// 设置缓存策略 NONE：什么都不缓存
                .into(imageView);//最后个参数表示对应的控件imageView
    }
}
